From: Zeeshan Ali (Khattak) Date: Sat, 15 Feb 2014 13:42:43 +0000 (+0000) Subject: location: Create Geoclue proxy asynchronously X-Git-Tag: archive/raspbian/50.5-1+rpi1~1^2~1013^2^2~2790 X-Git-Url: https://dgit.raspbian.org/%22http://www.example.com/cgi/%22/%22http:/www.example.com/cgi/%22?a=commitdiff_plain;h=7826fb4f041ecf33e131c5f76b9adb942fc4684e;p=gnome-shell.git location: Create Geoclue proxy asynchronously https://bugzilla.gnome.org/show_bug.cgi?id=723684 --- diff --git a/js/ui/status/location.js b/js/ui/status/location.js index 4a4601487..793e5a0b8 100644 --- a/js/ui/status/location.js +++ b/js/ui/status/location.js @@ -41,10 +41,19 @@ const Indicator = new Lang.Class({ }, _onGeoclueAppeared: function() { - // FIXME: This should be done async - this._proxy = new GeoclueManager(Gio.DBus.system, - 'org.freedesktop.GeoClue2', - '/org/freedesktop/GeoClue2/Manager'); + new GeoclueManager(Gio.DBus.system, + 'org.freedesktop.GeoClue2', + '/org/freedesktop/GeoClue2/Manager', + Lang.bind(this, this._onProxyReady)); + }, + + _onProxyReady: function (proxy, error) { + if (error != null) { + log (error.message); + return; + } + + this._proxy = proxy; this._proxy.connect('g-properties-changed', Lang.bind(this, this._sync)); this._sync();